package com.oimc.aimin.satoken.user;

import cn.dev33.satoken.stp.SaLoginModel;
import cn.dev33.satoken.stp.SaTokenInfo;
import cn.dev33.satoken.stp.StpLogic;
import com.oimc.aimin.satoken.Device;

public class StpUserUtil {

    public static StpLogic stpLogic = new StpLogic("USER");


    /**
     * 使用PC设备进行登录
     * 此方法专门用于PC端的用户登录，通过设置特定的设备类型和配置，
     * 调用登录逻辑以实现PC端的用户认证
     *
     * @param openId 用户ID，用于标识尝试登录的用户
     */
    public static void loginByPc(String openId) {
        SaLoginModel config = new SaLoginModel();
        config.setDevice(Device.PC);
        config.setIsWriteHeader(false);
        stpLogic.login(openId, config);
    }

    public static SaTokenInfo loginByMiniProgram(String openId) {
        SaLoginModel config = new SaLoginModel();
        config.setDevice(Device.MINI_PROGRAM);
        config.setIsWriteHeader(false);
        stpLogic.login(openId, config);
        return stpLogic.getTokenInfo();
    }

}
